#NoEnv  ; 兼容性优化
SendMode Input  ; 更可靠的发送模式
SetKeyDelay, 0, 0  ; 禁用按键延迟

; AutoHotKey脚本是单线程的，不支持多个事件同时执行，新触发的事件会结束其他正在执行的事件，但是可以开启多个脚本或者SetTimmer函数来解决。

; 长按下键（Down Arrow）时启动左键连点
~Down::
    isClicking := true  ; 记录左键连点状态
    while (isClicking) {
        Click  ; 模拟鼠标左键点击
        Sleep 100  ; 间隔100毫秒（10次/秒）
    }
return

; 松开下键时停止左键连点
~Down Up::
    isClicking := false
return

; 长按右键（Right Arrow）时启动空格键连点
~Right::
    isSpaceClicking := true  ; 记录空格连点状态
    while (isSpaceClicking) {
        Send, {Space}  ; 模拟空格键点击
        Sleep 100  ; 间隔100毫秒（10次/秒）
    }
return

; 松开右键时停止空格连点
~Right Up::
    isSpaceClicking := false
return

; 长按鼠标侧键后面的按钮（通常为XButton1）时启动左键连点
~XButton1::
    isLeftClicking := true  ; 记录左键连点状态
    while (isLeftClicking) {
        Send, {LButton}  ; 模拟左键点击
        Sleep 100  ; 间隔100毫秒（10次/秒）
    }
return

; 松开鼠标侧键后面的按钮时停止左键连点
~XButton1 Up::
    isLeftClicking := false
return